package com.cloud.system.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.cloud.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * 服务监控配置
 *
 * @author yzj
 * @since 2022-10-25
 */
@Data
@Schema(name = "SysMonitor对象", description = "系统管理")
@TableName("sys_monitor")
public class SysMonitor extends BaseEntity {

    @Schema(description = "主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @Schema(description = "系统编号")
    private String sysCode;

    @Schema(description = "服务监控名称")
    private String serviceName;

    @Schema(description = "服务监控地址", hidden = true)
    private String serviceUrl;

    @Schema(description = "缓存监控地址", hidden = true)
    private String redisUrl;

    @Schema(description = "连接池监控地址", hidden = true)
    private String druidUrl;

    @Schema(description = "显示顺序")
    private Integer orderNum;

    @Schema(description = "启用状态（1启用 0停用）")
    private String status;

    @Schema(description = "备注")
    private String remark;

    @Schema(description = "项目名称")
    @TableField(exist = false)
    private String sysName;

    @Schema(description = "微服务模块名称（要和系统定义保持一致）")
    @TableField(exist = false)
    private String modulesName;

}
